//
//  YuchBoxAppDelegate.h
//  YuchBox
//
//  Created by Ivan on 11-9-28.
//  Copyright 2011年 __MyCompanyName__. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "SpringboardController.h"
#import "Utility.h"

#import "MTRootToolBarViewController.h"
#import "MTMainViewController.h"
#import "MTMsgViewController.h"
#import "MTRootViewController.h"
#import "MTEmailViewController.h"
#import "Account.h"

#import "IvanNavigationBar.h"
@class MTRootViewController;
@class IvanNavigationBar;
@class IvanNavgationBarController;

typedef enum {
    WindowViewTagForNavigationBar = 100,
    WindowViewTagForSpringboard,
    WindowViewTagForStateViewer,
} WindowViewTag;

@interface YuchBoxAppDelegate : UIResponder <UIApplicationDelegate, DataSourceDelegate>

@property (strong, nonatomic) UIWindow                      *window;
@property (strong, nonatomic) SpringboardController         *springboardController;
@property (strong, nonatomic) MTRootToolBarViewController   *rootToolBarViewController;
@property (strong, nonatomic) UINavigationController        *navigationCotrollernew;
@property (strong, nonatomic) StateViewer                   *stateViewer;
@property (strong, nonatomic) Account                       *accountSession;
//@property (strong, nonatomic) IvanNavigationBar             *ivanNavigationBar;

+ (YuchBoxAppDelegate *)shareAppDelegate;
+ (StateViewer *)shareStateViewer;
+ (Account *)shareAccount;

//- (void)setupLoginView;
- (void)setupSpringboardView;
//- (void)setupStateViewer;
- (void)setupMainView;
- (void)setSubViewTop:(WindowViewTag)viewTag;


// ~Deprecated
//- (UIViewController *)createUserTabBarViewController:(Class)controllerClass nibName:(NSString *)nibName tabIconName:(NSString *)iconName tabTitle:(NSString *)title;

//- (void)setupUserTabBarInterfaces;

@end
